/**
 * 扩展工具包
 * Name:rmputil.js
 * Author:xuwangcheng
 * E-mail:xuwangcheng14@163.com
 */
layui.define('layer', function(exports){ //提示：模块也可以依赖其它模块，如：layui.define('layer', callback);
    var layer = layui.layer;
    var obj = {
        dateUtils:{
            /*
             * 方法作用：【取传入日期是星期几】
             * 使用方法：dateUtil.nowFewWeeks(new Date());
             * @param date{date} 传入日期类型
             * @returns {星期四，...}
             */
            nowFewWeeks:function(date){
                if(date instanceof Date){
                    var dayNames = new Array("星期天","星期一","星期二","星期三","星期四","星期五","星期六");
                    return dayNames[date.getDay()];
                } else{
                    throw "Param error,date type!";
                }
            },
            /*
             * 方法作用：【字符串转换成日期】
             * 使用方法：dateUtil.strTurnDate("2010-01-01");
             * @param str {String}字符串格式的日期，传入格式：yyyy-mm-dd(2015-01-31)
             * @return {Date}由字符串转换成的日期
             */
            strTurnDate:function(str){
                var   re   =   /^(\d{4})\S(\d{1,2})\S(\d{1,2})$/;
                var   dt;
                if   (re.test(str)){
                    dt   =   new   Date(RegExp.$1,RegExp.$2   -   1,RegExp.$3);
                }
                return dt;
            },
            /*
             * 方法作用：【计算2个日期之间的天数】
             * 传入格式：yyyy-mm-dd(2015-01-31)
             * 使用方法：dateUtil.dayMinus(startDate,endDate);
             * @startDate {Date}起始日期
             * @endDate {Date}结束日期
             * @return endDate - startDate的天数差
             */
            dayMinus:function(startDate, endDate){
                if(startDate instanceof Date && endDate instanceof Date){
                    var days = Math.floor((endDate-startDate)/(1000 * 60 * 60 * 24));
                    return days;
                }else{
                    throw "Param error,date type!";
                }
            }
        },
        stringUtils:{
            /*
             * 判断字符串是否为空
             * @param str 传入的字符串
             * @returns {}
             */
            isNotEmpty:function(str){
                if(str != null && str.length > 0){
                    return true;
                }else{
                    return false;
                }
            },
            /*
             * 判断字符串是否为空
             * @param str 传入的字符串
             * @returns {}
             */
            isEmpty:function(str){
                if(str != null && str.length > 0){
                    return false;
                }else{
                    return true;
                }
            },
            /*
             * 判断两个字符串子否相同
             * @param str1
             * @param str2
             * @returns {Boolean}
             */
            isEquals:function(str1,str2){
                if(str1==str2){
                    return true;
                }else{
                    return false;
                }
            },
            /*
             * 忽略大小写判断字符串是否相同
             * @param str1
             * @param str2
             * @returns {Boolean}
             */
            isEqualsIgnorecase:function(str1,str2){
                if(str1.toUpperCase() == str2.toUpperCase()){
                    return true;
                }else{
                    return false;
                }
            },
            /**
             * 判断是否是中文
             * @param str
             * @returns {Boolean}
             */
            isChine:function(str){
                var reg = /^([u4E00-u9FA5]|[uFE30-uFFA0])*$/;
                if(reg.test(str)){
                    return false;
                }
                return true;
            },
            toBoolean:function(str){
                if (str == 'false') {
                    return false;
                }
                return Boolean(str);
            }
        },
        numberUtils:{
            isNum:function(val){
                if(val === "" || val == null){
                    return false;
                }
                if(!isNaN(val)){
                    return true;
                }else{
                    return false;
                }
            }
        },
        eventUtils:{

        },
        jsonUtils:{
          len:function(jsonObject){
              if (typeof jsonObject != 'object') return 1;
              var jsonLength = 0;
              var fun = function(obj) {
                for (var item in obj) {
                    if (typeof item != 'object') {
                        jsonLength ++;
                    } else {
                        fun(item);
                    }
                }
              }
              fun(jsonObject);
              return jsonLength;
          }
        },
        arrayUtils:{
            isArray:function(arr){
                return Object.prototype.toString.call(arr)=='[object Array]';
            },
            indexOf:function(arr, val){
                for (var i = 0; i < arr.length; i++) {
                    if (arr[i] == val) return i;
                }
                return -1;
            },
            removeValue:function(arr, val){
                var index = arr.indexOf(val);
                if (index > -1) {
                    arr.splice(index, 1);
                }
            }
        },
        loadUtils:{
            /*
             * 方法说明：【动态加载js文件css文件】
             * 使用方法：loadUtil.loadjscssfile("http://libs.baidu.com/jquery/1.9.1/jquery.js","js")
             * @param fileurl 文件路径，
             * @param filetype 文件类型，支持传入类型，js、css
             */
            loadjscssfile:function(fileurl, filetype){
                if(filetype == "js"){
                    var fileref = document.createElement('script');
                    fileref.setAttribute("type","text/javascript");
                    fileref.setAttribute("src",fileurl);
                }else if(filetype == "css"){

                    var fileref = document.createElement('link');
                    fileref.setAttribute("rel","stylesheet");
                    fileref.setAttribute("type","text/css");
                    fileref.setAttribute("href",fileurl);
                }
                if(typeof fileref != "undefined"){
                    document.getElementsByTagName("head")[0].appendChild(fileref);
                }else{
                    layer.alert("loadjscssfile method error!");
                }
            }
        }
    };
    exports('rmputils', obj);
});